package com.kujie.access.domain.po;

import com.baomidou.mybatisplus.annotation.*;
import com.kujie.common.tenant.core.TenantEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDate;

/**
 * 企业租赁信息表实体类
 *
 * @author check
 * @date 2025-07-03
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("access_enterprise_rental_information")
public class AccessEnterpriseRentalInformation extends TenantEntity implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 企业租赁信息表主键id
     */
    @TableId(value = "id")
    private Long id;

    /**
     * 企业uuid
     */
    @TableField("company_uuid")
    private String companyUuid;

    /**
     * 栋号
     */
    @TableField("building_no")
    private String buildingNo;

    /**
     * 房号
     */
    @TableField("room_number")
    private String roomNumber;

    /**
     * 面积
     */
    @TableField("area")
    private String area;

    /**
     * 签合同时间
     */
    @TableField("sign_date")
    private LocalDate signDate;

    /**
     * 租赁期限
     */
    @TableField("term_of_lease")
    private String termOfLease;

    /**
     * 租赁时间
     */
    @TableField("lease_date")
    private LocalDate leaseDate;

    /**
     * 到期时间
     */
    @TableField("expire_date")
    private LocalDate expireDate;

    /**
     * 免租时间
     */
    @TableField("rent_free_period")
    private String rentFreePeriod;

    /**
     * 免租期
     */
    @TableField("rent_free_period_date")
    private String rentFreePeriodDate;

    /**
     * 宇总批示
     */
    @TableField("general_order")
    private String generalOrder;

    /**
     * 租金单价
     */
    @TableField("rent_per_unit")
    private String rentPerUnit;

    /**
     * 月房租
     */
    @TableField("monthly_rent")
    private String monthlyRent;

    /**
     * 保证金
     */
    @TableField("earnest_money")
    private String earnestMoney;

    /**
     * 季度房租
     */
    @TableField("quarterly_rent")
    private String quarterlyRent;

    /**
     * 租金到期时间
     */
    @TableField("rent_expiration_date")
    private LocalDate rentExpirationDate;

    /**
     * 交房时间
     */
    @TableField("completion_date")
    private LocalDate completionDate;

    /**
     * 退租日期
     */
    @TableField("lease_termination_date")
    private LocalDate leaseTerminationDate;

    /**
     * 是否精装
     */
    @TableField("is_hardcover")
    private String isHardcover;

    /**
     * 转介情况
     */
    @TableField("referral_situation")
    private String referralSituation;

    /**
     * 特殊审批事项
     */
    @TableField("special_approval_matters")
    private String specialApprovalMatters;

    /**
     * 置业顾问
     */
    @TableField("property_consultant")
    private String propertyConsultant;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
}
